package cn.hongwei.nacos.context;

import cn.hongwei.nacos.param.NacosInfoParam;
import cn.hongwei.nacos.param.NacosServicesListParam;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;
import java.util.List;
import java.util.Map;

/**
 * @author Great
 * @email 1224028994@qq.com
 * 所有的请求参数
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
public class InstanceRequest implements Serializable {

    /**
     * nacos的基本信息 ip port等
     */
    private NacosInfoParam nacosInfoParam;

    /**
     * 服务列表的请求参数
     */
    private NacosServicesListParam nacosServicesListParam;

    /**
     * 获取所有的实例请求参数包括
     * 外层key是namespace，内层map的key是当前名称空间下的组名，value是服务名
     * 因为相同分组会有多个服务名，所以服务名用集合表示
     */
    private Map<String,Map<String, List<String>>> instancesParam;
}
